[INFO] fetching crate embedded-platform 0.1.2...
[INFO] fixing embedded-platform-0.1.2 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate embedded-platform 0.1.2 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate embedded-platform 0.1.2
[INFO] finished tweaking crates.io crate embedded-platform 0.1.2
[INFO] tweaked toml for crates.io crate embedded-platform 0.1.2 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate embedded-platform 0.1.2 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 13 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec
[INFO] running `Command { std: "docker" "start" "35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking embedded-platform v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.17s
[INFO] [stderr] crater-edition-check: embedded-platform v0.1.2 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stderr]     Checking embedded-platform v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/gpio.rs:125:22
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct NoConnect(bool);
[INFO] [stdout]     |            --------- ^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout]     = note: `NoConnect` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `position` is never read
[INFO] [stdout]   --> src/io/read.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Read<'a, A>
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     position: usize,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Read` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<Self>
[INFO] [stdout]    |            ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<'_, Self>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<Self>
[INFO] [stdout]    |            ^^^^^^^^^                 ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<'_, Self>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/get.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<A>
[INFO] [stdout]    |                    ^^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<'_, A>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/set.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<A>
[INFO] [stdout]    |                    ^^^^^^                 ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<'_, A>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:37:19
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<Self>
[INFO] [stdout]    |                   ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<'_, Self>
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<Self>
[INFO] [stdout]    |                    ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<'_, Self>
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_read.rs:20:30
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<A>
[INFO] [stdout]    |                              ^^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<'_, A>
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_write.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<A>
[INFO] [stdout]    |                               ^^^^^^                  ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<'_, A>
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/io.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<Self>
[INFO] [stdout]     |                 ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<'_, Self>
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/shutdown.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<A>
[INFO] [stdout]    |                                   ^^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<'_, A>
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/gpio.rs:125:22
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct NoConnect(bool);
[INFO] [stdout]     |            --------- ^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout]     = note: `NoConnect` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `position` is never read
[INFO] [stdout]   --> src/io/read.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Read<'a, A>
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     position: usize,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Read` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<Self>
[INFO] [stdout]    |            ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<'_, Self>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<Self>
[INFO] [stdout]    |            ^^^^^^^^^                 ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<'_, Self>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/get.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<A>
[INFO] [stdout]    |                    ^^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<'_, A>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/set.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<A>
[INFO] [stdout]    |                    ^^^^^^                 ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<'_, A>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:37:19
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<Self>
[INFO] [stdout]    |                   ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<'_, Self>
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<Self>
[INFO] [stdout]    |                    ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<'_, Self>
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_read.rs:20:30
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<A>
[INFO] [stdout]    |                              ^^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<'_, A>
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_write.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<A>
[INFO] [stdout]    |                               ^^^^^^                  ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<'_, A>
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/io.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<Self>
[INFO] [stdout]     |                 ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<'_, Self>
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/shutdown.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<A>
[INFO] [stdout]    |                                   ^^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<'_, A>
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.40s
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr]     Checking embedded-platform v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.78s
[INFO] [stderr] crater-edition-check: embedded-platform v0.1.2 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking embedded-platform v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/gpio/get.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl<A> future::Future for Get<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     unused_qualifications,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 24 - impl<A> future::Future for Get<'_, A>
[INFO] [stdout] 24 + impl<A> Future for Get<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/gpio/set.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl<A> future::Future for Set<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 26 - impl<A> future::Future for Set<'_, A>
[INFO] [stdout] 26 + impl<A> Future for Set<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/i2c/begin_read.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<A> future::Future for BeginRead<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 27 - impl<A> future::Future for BeginRead<'_, A>
[INFO] [stdout] 27 + impl<A> Future for BeginRead<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/i2c/begin_write.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<A> future::Future for BeginWrite<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 27 - impl<A> future::Future for BeginWrite<'_, A>
[INFO] [stdout] 27 + impl<A> Future for BeginWrite<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/i2c/initialize.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl<A, SDA, SCL> future::Future for Initialize<A, SDA, SCL>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 30 - impl<A, SDA, SCL> future::Future for Initialize<A, SDA, SCL>
[INFO] [stdout] 30 + impl<A, SDA, SCL> Future for Initialize<A, SDA, SCL>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/read.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<A> future::Future for Read<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 28 - impl<A> future::Future for Read<'_, A>
[INFO] [stdout] 28 + impl<A> Future for Read<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/read_exact.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<A> future::Future for ReadExact<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 28 - impl<A> future::Future for ReadExact<'_, A>
[INFO] [stdout] 28 + impl<A> Future for ReadExact<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/shutdown.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<A> future::Future for Shutdown<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 18 - impl<A> future::Future for Shutdown<'_, A>
[INFO] [stdout] 18 + impl<A> Future for Shutdown<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/write.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<A> future::Future for Write<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 18 - impl<A> future::Future for Write<'_, A>
[INFO] [stdout] 18 + impl<A> Future for Write<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/write_all.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<A> future::Future for WriteAll<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 20 - impl<A> future::Future for WriteAll<'_, A>
[INFO] [stdout] 20 + impl<A> Future for WriteAll<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/platform/initialize.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<P> future::Future for Initialize<P>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 16 - impl<P> future::Future for Initialize<P>
[INFO] [stdout] 16 + impl<P> Future for Initialize<P>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/gpio/get.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl<A> future::Future for Get<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     unused_qualifications,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 24 - impl<A> future::Future for Get<'_, A>
[INFO] [stdout] 24 + impl<A> Future for Get<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/gpio/set.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl<A> future::Future for Set<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 26 - impl<A> future::Future for Set<'_, A>
[INFO] [stdout] 26 + impl<A> Future for Set<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/i2c/begin_read.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<A> future::Future for BeginRead<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 27 - impl<A> future::Future for BeginRead<'_, A>
[INFO] [stdout] 27 + impl<A> Future for BeginRead<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/i2c/begin_write.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<A> future::Future for BeginWrite<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 27 - impl<A> future::Future for BeginWrite<'_, A>
[INFO] [stdout] 27 + impl<A> Future for BeginWrite<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/i2c/initialize.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl<A, SDA, SCL> future::Future for Initialize<A, SDA, SCL>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 30 - impl<A, SDA, SCL> future::Future for Initialize<A, SDA, SCL>
[INFO] [stdout] 30 + impl<A, SDA, SCL> Future for Initialize<A, SDA, SCL>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/read.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<A> future::Future for Read<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 28 - impl<A> future::Future for Read<'_, A>
[INFO] [stdout] 28 + impl<A> Future for Read<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/read_exact.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<A> future::Future for ReadExact<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 28 - impl<A> future::Future for ReadExact<'_, A>
[INFO] [stdout] 28 + impl<A> Future for ReadExact<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/shutdown.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<A> future::Future for Shutdown<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 18 - impl<A> future::Future for Shutdown<'_, A>
[INFO] [stdout] 18 + impl<A> Future for Shutdown<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/write.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<A> future::Future for Write<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 18 - impl<A> future::Future for Write<'_, A>
[INFO] [stdout] 18 + impl<A> Future for Write<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/io/write_all.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<A> future::Future for WriteAll<'_, A>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 20 - impl<A> future::Future for WriteAll<'_, A>
[INFO] [stdout] 20 + impl<A> Future for WriteAll<'_, A>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unnecessary qualification
[INFO] [stdout]   --> src/platform/initialize.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<P> future::Future for Initialize<P>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 16 - impl<P> future::Future for Initialize<P>
[INFO] [stdout] 16 + impl<P> Future for Initialize<P>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/gpio.rs:125:22
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct NoConnect(bool);
[INFO] [stdout]     |            --------- ^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout]     = note: `NoConnect` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `position` is never read
[INFO] [stdout]   --> src/io/read.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Read<'a, A>
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     position: usize,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Read` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<Self>
[INFO] [stdout]    |            ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<'_, Self>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<Self>
[INFO] [stdout]    |            ^^^^^^^^^                 ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<'_, Self>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/get.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<A>
[INFO] [stdout]    |                    ^^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<'_, A>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/set.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<A>
[INFO] [stdout]    |                    ^^^^^^                 ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<'_, A>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:37:19
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<Self>
[INFO] [stdout]    |                   ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<'_, Self>
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<Self>
[INFO] [stdout]    |                    ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<'_, Self>
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_read.rs:20:30
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<A>
[INFO] [stdout]    |                              ^^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<'_, A>
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_write.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<A>
[INFO] [stdout]    |                               ^^^^^^                  ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<'_, A>
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/io.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<Self>
[INFO] [stdout]     |                 ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<'_, Self>
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/shutdown.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<A>
[INFO] [stdout]    |                                   ^^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<'_, A>
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `embedded-platform` (lib test) due to 11 previous errors; 12 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/gpio.rs:125:22
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct NoConnect(bool);
[INFO] [stdout]     |            --------- ^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout]     = note: `NoConnect` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `position` is never read
[INFO] [stdout]   --> src/io/read.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Read<'a, A>
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     position: usize,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Read` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<Self>
[INFO] [stdout]    |            ^^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn get(&mut self) -> get::Get<'_, Self>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<Self>
[INFO] [stdout]    |            ^^^^^^^^^                 ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |            |
[INFO] [stdout]    |            the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn set(&mut self, high: bool) -> set::Set<'_, Self>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/get.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<A>
[INFO] [stdout]    |                    ^^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get<A>(pin: &mut A) -> Get<'_, A>
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/gpio/set.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<A>
[INFO] [stdout]    |                    ^^^^^^                 ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn set<A>(pin: &mut A, high: bool) -> Set<'_, A>
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:37:19
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<Self>
[INFO] [stdout]    |                   ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn begin_read(&mut self, address: u8) -> begin_read::BeginRead<'_, Self>
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<Self>
[INFO] [stdout]    |                    ^^^^^^^^^                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn begin_write(&mut self, address: u8) -> begin_write::BeginWrite<'_, Self>
[INFO] [stdout]    |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_read.rs:20:30
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<A>
[INFO] [stdout]    |                              ^^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_read<A>(reader: &mut A, address: u8) -> BeginRead<'_, A>
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/i2c/begin_write.rs:20:31
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<A>
[INFO] [stdout]    |                               ^^^^^^                  ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                               |
[INFO] [stdout]    |                               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn begin_write<A>(writer: &mut A, address: u8) -> BeginWrite<'_, A>
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/io.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<Self>
[INFO] [stdout]     |                 ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn shutdown(&mut self) -> shutdown::Shutdown<'_, Self>
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/io/shutdown.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<A>
[INFO] [stdout]    |                                   ^^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(crate) fn shutdown<A>(writer: &mut A) -> Shutdown<'_, A>
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `embedded-platform` (lib) due to 11 previous errors; 12 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec", kill_on_drop: false }`
[INFO] [stdout] 35a49e34efbb61df4f74a6bad24dbe400eb7e73bca65730a536172412a604bec
